package com.muyaxuan.mail.dao;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.session.SqlSession;

import com.muyaxuan.mail.dto.GoodsType;

public class GoodsTypeDao extends BaseDao{
	public static final String NAME_SPACE="com.muyaxuan.mail.dto.GoodsType.";
	/**
	 * 获取商品大类型
	 * @return
	 */
	public List<GoodsType> getMinType(String code){
		
		//List<User> userList = new ArrayList<>();
		//获取会话
		SqlSession session = getSqlSession();
		
		List<GoodsType> minTypes = session.selectList(NAME_SPACE+"getMinType",code);
		
		closeSqlSession();
		//返回集合
		return minTypes;
	}
	/**
	 * 获取商品小类型
	 * @return
	 */
	public List<GoodsType> getMaxType(){
		
		//List<User> userList = new ArrayList<>();
		//获取会话
		SqlSession session = getSqlSession();
		
		List<GoodsType> maxTypes = session.selectList(NAME_SPACE+"getMaxType");
		
		closeSqlSession();
		//返回集合
		return maxTypes;
	}


	/**
	 * 获取商品类型列表
	 * @return
	 */
	public List<GoodsType> getGoodTypeList(){
		
		//List<User> userList = new ArrayList<>();
		//获取会话
		SqlSession session = getSqlSession();
		//接收数据库返回的数据
		List<GoodsType> goodsTypeList = session.selectList(NAME_SPACE+"getGoodsTypeList");
		
		closeSqlSession();
		//返回集合
		return goodsTypeList;
	}
	/**
	 * 根据编码code获取商品类型
	 * @return
	 */
    public GoodsType getGoodTypeByCode(String code){
		//获取会话
		SqlSession session = getSqlSession();
		//接收数据库返回的数据
		GoodsType goodsType = session.selectOne(NAME_SPACE+"getGoodsTypeByCode",code);
		
		closeSqlSession();
		//返回集合
		return goodsType;
	}
    /**
	 * 更新商品类型
	 * @return
	 */
    public String updateGoodsType(GoodsType goodsType){
		//获取会话
		SqlSession session = getSqlSession();
		//接收数据库返回的数据
		int count = session.update(NAME_SPACE+"update",goodsType);
		
		session.commit();
		
		closeSqlSession();
		//tip
		return count>0?"更新成功":"更新失败";
	}
    /**
	 * 添加商品类型
	 * @return
	 */
    public String addGoodsType(GoodsType goodsType){
		//获取会话
		SqlSession session = getSqlSession();
		//接收数据库返回的数据
		int count = session.update(NAME_SPACE+"insert",goodsType);
		
		session.commit();
		
		closeSqlSession();
		//tip
		return count>0?"添加成功":"添加失败";
	}
    /**
	 * 删除商品类型
	 * @return
	 */
    public String deleteGoodsType(String code){
		//获取会话
		SqlSession session = getSqlSession();
		//接收数据库返回的数据
		int count = session.update(NAME_SPACE+"delete",code);
		
		session.commit();
		
		closeSqlSession();
		//tip
		return count>0?"删除成功":"删除失败";
	}
	

}
